/*
 * Funciones auxiliares
 */
function nuevoAjax()
{
    /* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
     lo que se puede copiar tal como esta aqui */
    var pagina_requerida = false
    if (window.XMLHttpRequest) {
        // comprueba si el navegador es opera, safari, mozilla, etc.
        pagina_requerida = new XMLHttpRequest();
        return pagina_requerida;
    }
    else if (window.ActiveXObject){
        // comprueba si el navegador es internet explorer
        try {
            pagina_requerida = new ActiveXObject("Msxml2.XMLHTTP");
            return pagina_requerida;
        }
        catch (e){
            // caso de versión antigua de internet explorer
            try{
                pagina_requerida = new ActiveXObject("Microsoft.XMLHTTP");
                return pagina_requerida;
            }
            catch (e){
            }
        }
    }
    else {
        return false
    }
}
function cargaContenidocombo(idSelectOrigen,idSelectDestino,url)
{
    var selectOrigen=document.getElementById(idSelectOrigen);
    // Obtengo la opcion que el usuario selecciono
    var opcionSeleccionada=selectOrigen.options[selectOrigen.selectedIndex].value;
    // Si el usuario eligio la opcion "Seleccione Tipo", no voy al servidor y pongo los selects siguientes en estado "Selecciona opcion..."
    if(opcionSeleccionada==-1)
    {selectActual=document.getElementById(idSelectDestino);
        selectActual.length=0;
        var nuevaOpcion=document.createElement("option");nuevaOpcion.value=0;nuevaOpcion.innerHTML="Selecciona Opción...";
        selectActual.appendChild(nuevaOpcion);selectActual.disabled=true;
    }
    // Compruebo que el select modificado no sea el ultimo de la cadena
    else {
        // Obtengo el elemento del select que debo cargar
        var selectDestino=document.getElementById(idSelectDestino);
        // Creo el nuevo objeto AJAX y envio al servidor el ID del select a cargar y la opcion seleccionada del select origen
        var ajax=nuevoAjax();
        ajax.open("GET", url+"?select="+idSelectDestino+"&opcion="+opcionSeleccionada, true);
        ajax.onreadystatechange=function()
        {
            if (ajax.readyState==1)
            {
                // Mientras carga elimino la opcion "Selecciona Opcion..." y pongo una que dice "Cargando..."
                selectDestino.length=0;
                var nuevaOpcion=document.createElement("option");nuevaOpcion.value=0;nuevaOpcion.innerHTML="Cargando...";
                selectDestino.appendChild(nuevaOpcion);selectDestino.disabled=true;
            }
            if (ajax.readyState==4)
            {
                selectDestino.innerHTML=ajax.responseText;
            }
        }
        ajax.send(null);
    }
}

function realizarbusq(Documento,idNombre,idApeMat,idApePat,idTabla,url){
    var nombres=document.getElementById(idNombre).value;
    var apePat=document.getElementById(idApeMat).value;
    var apeMat=document.getElementById(idApePat).value;
    var doc=document.getElementById(Documento).value;
    var ajax=nuevoAjax();
    ajax.open("GET", url+"?Documento="+doc+"&nombres="+nombres+"&idTabla="+idTabla+"&apePat="+apePat+"&apeMat="+apeMat, true);
    ajax.send(null);
    ajax.onreadystatechange=function()
    {
        if (ajax.readyState==4)
        {
            document.getElementById(idTabla).innerHTML=ajax.responseText;
        }
    }

}
function realizarbusqPer(Documento,idNombre,idApeMat,idApePat,idTabla,url,textCod,textName){
    var nombres=document.getElementById(idNombre).value;
    var apePat=document.getElementById(idApeMat).value;
    var apeMat=document.getElementById(idApePat).value;
    var texCod=document.getElementById(textCod).value;
    var texName=document.getElementById(textName).value;
    var doc=document.getElementById(Documento).value;

    var ajax=nuevoAjax();
    ajax.open("GET", url+"?Documento="+doc+"&nombres="+nombres+"&idTabla="+idTabla+"&apePat="+apePat+"&apeMat="+apeMat+"&textCod="+texCod+"&textname="+texName, true);
    ajax.send(null);
    ajax.onreadystatechange=function()
    {
        if (ajax.readyState==4)
        {
            document.getElementById(idTabla).innerHTML=ajax.responseText;
        }
    }

}

function busquedaOrden(codOrden,codPaciente,nombres,ApeMat,ApePat,idTabla,url){
    var nombres=document.getElementById(nombres).value;
    var aPat=document.getElementById(ApeMat).value;
    var aMat=document.getElementById(ApePat).value;
    var codOrd=document.getElementById(codOrden).value;
    var codPac=document.getElementById(codPaciente).value;
    var ajax=nuevoAjax();
    ajax.open("GET", url+"?codOrden="+codOrd+"&codPaciente="+codPac+"&nombres="+nombres+"&apePat="+aPat+"&apeMat="+aMat+"&idTabla="+idTabla, true);
    ajax.send(null);
    ajax.onreadystatechange=function()
    {
        if (ajax.readyState==4)
        {
            document.getElementById(idTabla).innerHTML=ajax.responseText;
        }
    }

}


function cargaDoctor(idtextOrigen,idTexdestino,url)
{
    var coddoctor=document.getElementById(idtextOrigen).value;

    var ajax=nuevoAjax();
    ajax.open("GET", url+"?codigo="+coddoctor, true);
    ajax.send(null);
    ajax.onreadystatechange=function()
    {
        if (ajax.readyState==4)
        {
            document.getElementById(idTexdestino).value=ajax.responseText;
        }
    }
}
function buscarorden(){
    $('#myModal').modal('show')
}
function buscarpaciente(){
    $('#myModal').modal('show')
}
function buscarEmple(cod,name,textCod,textName){
    document.getElementById(textCod).value=cod;
    document.getElementById(textName).value=name;
    $('#myModalP').modal('show')
}
function limpiartabla(tabla){
    var tabl=document.getElementById(tabla)
    for(i=0;tabl.rows.length>0;){
        tabl.deleteRow(i);
    }
}
function cargarPaciente(fila,id,codigo,nombre){
    document.getElementById(id).value=fila.cells[0].textContent ;
    document.getElementById(codigo).value=fila.cells[1].textContent ;
    document.getElementById(nombre).value=fila.cells[2].textContent+" "+fila.cells[3].textContent;
    var tabla=fila.parentNode;
    for(i=0;tabla.rows.length>0;){
        tabla.deleteRow(i);
    }
    $('#myModal').modal('hide');
}
function cargarPersonal(fila,codigo,nombre){
    document.getElementById(codigo).value=fila.cells[0].textContent ;
    document.getElementById(nombre).value=fila.cells[1].textContent+" "+fila.cells[2].textContent;
    var tabla=fila.parentNode;
    for(i=0;tabla.rows.length>0;){
        tabla.deleteRow(i);
    }
    $('#myModalP').modal('hide');
}

function mostrarFecha(){
    nombres_dias = new Array("Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado");
    nombres_meses = new Array("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre");
    fecha_actual = new Date();
    dia_mes = fecha_actual.getDate();		//dia del mes
    strdia_mes = (dia_mes <= 9) ? "0" + dia_mes : dia_mes;
    dia_semana = fecha_actual.getDay();		//dia de la semana
    mes = fecha_actual.getMonth() + 1;
    strmes = (mes <= 9) ? "0" + mes : mes;
    anio = fecha_actual.getYear();
    if (anio < 100) anio = "19" + anio;		//pasa el año a 4 digitos
    else if ( ( anio > 100 ) && ( anio < 999 ) ) {	//efecto 2000
        var cadena_anio = new String(anio)
        anio = "20" + cadena_anio.substring(1,3)
    };
    document.write(dia_mes + " - " + mes + " - " + anio)
}

function agregarFila(nombre,cuerpo,idtipo,idexam,iddetalle){
    var auto = document.getElementById(nombre);
    var num=parseInt(auto.value)+1;
    var comboexam=document.getElementById(idexam);
    var valexam=comboexam.options[comboexam.selectedIndex].value;
    var textexam=comboexam.options[comboexam.selectedIndex].text;
    var detalle=document.getElementById(iddetalle).value;
    auto.value = num;  //aumentamos el id de los campos
    //Se agregara cada campo
    var objTr = document.createElement("tr");  //se crea una fila
    var objTd1 = document.createElement("td");  //creamos cada celda
    objTd1.innerHTML = num;  // asignamos el html al td
    objTr.appendChild(objTd1); // agregamos el td a la fila
    var objTd = document.createElement("td");  //creamos cada celda
    StrHtml="<label>"+textexam+"</label><input type=\"hidden\" name=\"Examenes[]\" value='"+valexam+"'>";
    objTd.innerHTML = StrHtml;  // asignamos el html al td
    objTr.appendChild(objTd); // agregamos el td a la fila
    var objTd3 = document.createElement("td");  //creamos cada celda
    StrHtml="<label>"+cortarcadena(detalle)+"</label><input type=\"hidden\" name=\"detalles[]\" value='"+detalle+"'>";
    objTd3.innerHTML = StrHtml;  // asignamos el html al td
    objTr.appendChild(objTd3); // agregamos el td a la fila
    var objTd4 = document.createElement("td");  //creamos cada celda
    StrHtml="<a class=\"btn btn-small\" onclick=\"remove(this)\"><i class=\"icon-remove-sign\"></i></a>";
    objTd4.innerHTML = StrHtml;  // asignamos el html al td
    objTr.appendChild(objTd4); // agregamos el td a la fila

    var objTbody = document.getElementById(cuerpo).getElementsByTagName("TBODY")[1];  //Seleccionamos el contenedor de las filas
    objTbody.appendChild(objTr); // agregamos la fila al contenedor
    return false;	//evita que haya un submit por equivocacion.
}
function cortarcadena(corta){
    if(corta.length>10){
        return corta.substr(0, 10)+"...";
    }else return corta;

}
function remove(t)
{
    var td = t.parentNode;
    var tr = td.parentNode;
    var table = tr.parentNode;
    table.removeChild(tr);
}

